In a communications network, a plurality of nodes may form an overlay network and thus be connected to one another. By way of example, the overlay network may be of the peer-to-peer type, referred to below as a P2P network. In such an overlay network, the nodes, referred to as “peers”, are interchangeable and possess capacities and responsibilities within the network that are equivalent, in contrast to an architecture of the client-server type. Such an overlay network does not rely on its own infrastructure, but on one or more communications networks that are already in place. It makes use of the resources of said underlying network(s) but without necessarily having any knowledge of their physical topology(ies). A communications network is said to underlie the overlay network.
The article entitled “Towards autonomic service control in next generation networks” by A. Klenk et al. and published in the ICAS08 Conference proposes a method of enabling a service to be introduced in autonomic manner in the overlay network. In an initial stage, an operator seeking to offer access to the service and a supplier of the service negotiate a contract prior to receiving a first request to implement the service, with the contract, referred to as a “multimedia transport service agreement”, including at least one constraint for implementing the service, e.g. a quality of service constraint. This first stage of negotiation serves to break down a service request into a chain of individual functions. For example, such functions are a video stream transcoding function, an error correction function, a watermarking function, . . . . In a second stage, implemented when a service access request is received from a client entity, nodes having processing modules needed for implementing the individual functions are then determined. Thereafter, depending on the result of this determination, the interconnections that are needed between the processing modules are in turn determined, while taking account firstly of the constraint(s) for implementing the service as specified in the contract and secondly of the costs of implementing the service. During a third stage, the service is supplied to the client entity while using the connections between the processing modules as set up during the second stage.
Once the first negotiation stage has terminated, the chain of individual functions associated with the service is “frozen” and can no longer be modified. Thus, a client entity requesting access to the service runs the risk of being refused because of incompatibility between the client entity's own quality of service constraint and those requested for implementing the service. In order to accommodate client entities presenting different quality of service constraints, it is then necessary to provide a distinct chain of individual functions for each potential quality of service constraint. Furthermore, the client entity may make a mistake when selecting a service corresponding to that entity's own quality of service constraint. The service can then not be supplied.